fix: hide console window when running 'git rev-parse HEAD' on Windows#941
Merged
andreiborza merged 1 commit intoJun 17, 2026
Merged
Conversation
andreiborza
approved these changes
Jun 17, 2026
andreiborza
left a comment
Member
There was a problem hiding this comment.
Hi @jwwisgerhof, thanks for contributing this, sounds like a good improvement to me!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
gitRevision()inpackages/bundler-plugins/src/core/utils.tsrunsexecSync("git rev-parse HEAD", { stdio: [...] })to auto-detect the release name. It passes nowindowsHide, and Node'schild_processdefaults it tofalse. This is the fallbackdetermineReleaseName()uses in local dev (when no CI/SENTRY_RELEASEenv var is set).When the bundler config is loaded by a console-less parent process, Windows allocates a new console for the git child and the default-terminal handoff renders it as a visible terminal window that flashes up and steals focus.
Real-world impact
This is probably quite limited in real world impact as this command should not be run on local dev machines. However, where it does, it fires constantly when running a Vite project inside (for example) an Nx workspace (
nx serve): Nx's project-graph daemon reloads the Vite config — and thus the Sentry plugin's release detection — in a console-less plugin worker on every file save, so a terminal window flashes every single time you save a file. Surfaced via nrwl/nx-console#2906 (comment) (there's a companion fix in Vite for its ownnet usecall).Fix
Add
windowsHide: trueto theexecSyncoptions. No behavioural change to release detection;windowsHidedoes nothing on macOS/Linux.Tests
Added a unit test asserting
execSyncis invoked withwindowsHide: true.